//二、【简答题】请说出下列最终的执行结果，并解释为什么
var tmp = 123
if (true) {
    console.log(tmp);
    let tmp
}

/**
 * 最终执行结果：报错：ReferenceError: Cannot access 'tmp' before initialization
 * 原因：let会形成块级作用域和封闭作用域，所以 tmp 无法拿到外层 var 声明的值，只能在块级作用域中查找。
 *      let不存在变量提升，因此console.log(tmp)无法找到声明，出现暂时性死区。
 */